A Unix shell is a command-line interpreter and script host that provides a traditional user interface for the Unix operating system and for Unix-like systems. Users direct operation of a Unix-based device by entering commands (e.g., input as text) for the Unix shell to execute or by creating text scripts of one or more such commands. Some users may securely access Unix-based devices (e.g., secure servers) via a user device (e.g., a personal computer, a laptop computer, a personal digital assistant (PDA), etc.), and may manipulate the Unix-based devices. For example, a network administrator of a telecommunications network may securely access one or more Unix-based devices in the network, and may manipulate (e.g., repair, perform maintenance on, edit configuration files, edit databases, etc.) the Unix-based devices.
However, current systems do not record users' manipulation of Unix-based devices. For example, current systems do not record configuration file changes and/or database edits performed by users, passwords provided by users to access Unix-based devices, applications, databases, etc. In another example, current systems do not provide a command line shell history when a user enters substitute user Unix commands (e.g., “su SomeID” or “sesudo BSomeID”) that are used to run a shell of another user without logging out.